"""
日志输出类，通过调用此类可以输出日志。
"""
import logging
import time
import os


class Logger(object):
    def __init__(self, logger):
        # 初始化日志对象
        self.logger = logging.getLogger(logger)  # logger 可以传类名
        self.logger.setLevel(logging.INFO)

    def get_log(self):
        # 日志时间
        log_time = time.strftime('%Y%m%d%H%M%S', time.localtime(time.time()))
        # 日志名称
        log_name = os.path.dirname(os.path.abspath('.')) + '\\log\\' + log_time + '.log'
        # 输出到文件
        # file_handler = logging.FileHandler(log_name, encoding='utf-8')
        # file_handler.setLevel(logging.INFO)
        # 输出到控制台
        console_handler = logging.StreamHandler()
        console_handler.setLevel(logging.INFO)
        # 日志格式
        formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(module)s - %(lineno)d - %(message)s',
                                      datefmt='%Y-%m-%d %H:%M:%S')
        # file_handler.setFormatter(formatter)
        console_handler.setFormatter(formatter)
        # 添加到日志对象
        # self.logger.addHandler(file_handler)
        self.logger.addHandler(console_handler)
        return self.logger
